#include<stdio.h>
#include<unistd.h>

int main()
{   
    // 利用execl函数完成进程的程序替换操作
    // 这里是单进程的操作
    printf("process is running\n");

    //int execl(const char *path, const char *arg, ...);
    //第一个参数是要执行的程序的位置，第二个参数你想怎么执行这个程序，传选项。...是可变参数列表
    execl("/usr/bin/ls", "ls", "-l", "--color=auto", NULL );//所有的execl的第二个参数都以NULL结尾
    
    // 这里的printf是不会被执行的，因为execl执行后，发生了程序替换，指定的程序将该进程的程序给覆盖掉了
    // 因此程序替换发生之后，就直接执行替换进来的程序，原来的程序不会被执行
    printf("finsih\n");

    return 0;
}

